Storytelling visual con R

Curso formativo para el PDI. Universidad de Castilla-La Mancha

Gema Fernández-Avilés
Isidro Hidalgo

Unidad 2 La importancia del contexto La importancia del contexto

Agenda

  1. Objetivos de aprendizaje

  2. Resultados esperados

  3. Conceptos clave

  4. ¿Qué hemos aprendido?

1. Objetivos de aprendizaje 🎯

  • Subrayar la importancia del contexto.

  • Conectar los datos con la historia.

  • Mostrar cómo el contexto influye en la visualización.

  • Evitar manipulaciones no intencionadas.

2. Resultados esperados 🏆

3. Conceptos clave 📃

Análisis exploratorio frente a análisis explicativo

Tipos de análisis. Fuente: Knaflic (2019)**

  • El análisis exploratorio: es lo que se hace para comprender los datos y averiguar qué puede ser digno de mención o interesante para otros. El análisis exploratorio es como buscar perlas en las ostras.

  • El análisis explicativo: es lo que se hace para explicar los datos a otros. El análisis explicativo es como hacer joyas con las perlas.

Cuestiones clave

¿Dónde empezamos?. Fuente: Knaflic (2019)

¿Cómo nos comunicamos con el público?

Communication mechanism continuum. Fuente: Knaflic (2019)

¿Cómo organizamos el contexto?

  • Historia en 3‐minutos:: Si sólo dispusieras de tres minutos para decirle a su público lo que necesita saber, ¿qué le dirías?

  • La gran idea: la Gran Idea reduce el “qué” aún más: a una sola frase.

  • Storyboard o representación visual de la historias: una serie de imágenes que representan las escenas clave de la historia.

El contexto en R: tidyverse

  • Conocer qué es el tidyverse y los datos tidy

  • Descubrir las acciones (verbos) de {dplyr}.

  • Aprender a visualizar datos con {ggplot2}.

Tidy data 📝

¿Qué significa tidy? ¿Cuál de estas dos imágenes es más tidy?

Imagen tomada de: iStock

¡Acertaste!

Imagen adaptada de: iStock

Características de los datos tidy

  • Cada variable forma una columna.

  • Cada observación forma una fila.

  • Cada tipo de unidad de observación forma una tabla.

Fuente: Wickham and Grolemund (2016)

The grammar of data wrangling: {tidyverse} 🚧

Fuente: Allison Horst

Fuente: https://r4ds.had.co.nz/

Tidyverse:

Es una colección de paquetes coehrentes, que comparten gramática, filosofía y estructura y están diseñados para realizar juntos como una canalización completa (pipeline). Todos se basan en la idea de tidy data propuesta por Hadley Wickham Hadley (2014) y pueden instalarse con un único comando en R:

install.packages("tidyverse")

Los paquetes que forman parte del tidyverse son:

  • {readr}, para importación de datos.

  • {dplyr}, para manipulación de datos.

  • {tidyr}, para ordenar datos.

  • {ggplot2}, para visualización de datos.

  • {purrr}, para programación.

  • {tibble}, para tibbles, un nuevo formato de data frames.

  • {stringr}, para caracteres.

  • {forcats}, para factores.

El operador pipe 📝

¿Qué es un pipe?

En programación, un pipe (tubo) es una técnica que permite pasar información de un proceso a otro.

Fuente: https://static-bcrf.biochem.wisc.edu/courses/Tabular-data-analysis-with-R-and-Tidyverse/book/8-tidyverseanotherRuniverse.html

¿Cómo funciona el pipe de forma intuitiva?

Imagina la siguiente secuencia:

(i) find keys, (ii) unlock car, (iii) start car, (iv) drive to work y (v) park.

Expresado como un cojunto de funciones anidadas y pseudo-código R podría ser así:

park(drive(start_car(unlock(find("keys"))), to = "work"))

Utilizando pipes la lectura se hace más fácil y natural:

find("keys") |>
  unlock_car() |>
  start_car() |>
  drive(to = "work") |>
  park()

Transformación de datos con dplyr

Fuente: https://dplyr.tidyverse.org/
filas:
  filter() filtra casos en función de sus valores.
  arrange() cambia el orden de las filas.

columnas:
  select() elige variables en función de sus nombres.

transformación:
  summarise() reduce múltiples valores a un solo resumen.
  mutate() agrega nuevas variables que son funciones de variables existentes.

agrupación:
  group_by() agrupa datos por una o más variables.

Importante: Cheatsheets en R

Cheatsheets

Fuente: https://posit.co/resources/cheatsheets/

Manos a la obra

Note

Nosotros vamos a contar historias con los datos usando el software estadístico R por lo que es necesario conocer algunos paquetes y funciones para poder manipular y representar los datos.

¿Qué hay en un conjunto de datos?

El conjunto de datos starwars

Fuente: https://datasciencebox.org

4. ¿Qué hemos aprendido? 📖

  • La importancia del contexto en la comunicación.

  • Nociones básicas para manipular datos en R.

Nuestra filosofía 📖: learning by doing

  • Recuerda que los ordenadores actualmente no son inteligentes.

  • Filosofía: copy, paste, and tweak.

  • La mejor forma de aprender código es haciéndolo.

  • La práctica es la clave.

Referencias

Hadley, Wickham. 2014. “Tidy Data.” Journal of Statistical Software 59 (10): 1–23.
Knaflic, Cole Nussbaumer. 2019. Storytelling with Data: Let’s Practice! John Wiley & Sons.
Wickham, Hadley, and Garrett Grolemund. 2016. R for Data Science: Import, Tidy, Transform, Visualize, and Model Data. " O’Reilly Media, Inc.".